Multiport multidrop digital system

ABSTRACT

A polled digital multiport, multidrop system is described. The inbound frame for sending information from remote terminals to the host terminals is arranged such that a plurality of bytes are provided by a first terminal, followed by a guard band, followed by a plurality of bytes provided by a second terminal, followed by another guard band, etc. The guard band permits signalling between the DSU and the OCU which in turn permits the OCU to signal the MJU that no data will be coming from the OCU. In this manner, control mode idle is accomplished and data mode idle is avoided. In addition, because of the guard band, if the delay from a remote site changes, no data will be lost. Means for monitoring the system to follow changes in delay are also provided, and the system can cause a remote location to accommodate a change in delay.

BACKGROUND OF THE INVENTION

This application is related to U.S. Ser. No. 07/749,897, abandoned,which is hereby incorporated by reference in its entirety herein.

1. Field of the Invention

This invention relates generally to telecommunications systems. Moreparticularly, it relates to digital multiport multidrop systems where aplurality of hosts are coupled via a single line to a digitaltelecommunications network and communicate with data terminals, where afirst group of data terminals are coupled via a first single line to thedigital telecommunications network and a second group of terminals arecoupled via a second single line to the digital telecommunicationsnetwork.

The invention is particularly applicable in the banking industry whereit may be desirable for banks to have information from tellers, ATMs andsecurity systems on a single line at various branches communicating withseparate hosts for tellers, ATMs and security systems at a singledifferent location.

2. State of the Art

Different multiport multidrop systems have been proposed. U.S. Pat. No.4,858,230 to Duggan, for example, discloses an analog system whereoutbound messages from hosts are multiplexed and sent on a constantcarrier over a single line to data terminals. Return messages from dataterminals are similarly sent. However, since only one data terminal canuse the line at any given time, responses from different terminals needto be delayed.

Recently, digital multiport multidrop systems have been proposed byRacal-Milgo and Paradyne. Digital systems do not use a carrier. Rather,as suggested by prior art FIG. 1, data from multiple hosts 12a, 12b, 12care multiplexed by a multiplexer 14 and are output by a data serviceunit (DSU) 16 in digital format to the digital network 22. The digitalnetwork, which is maintained by the telephone company, includes a numberof office channel units (OCUs) 24a, 24b, 24c, 24d, etc. and at least onemultiple junction unit (MJU) 28. The MJU combines data from the OCUs(e.g., 24b, 24c, 24d) based on information supplied to the MJU throughthe OCU. The OCU tells the MJU whether the OCU is in data send mode orin an idle mode (based on whether the OCU 24 is receiving data from anyof the drops 42a-42i of ports 43a-43c via multiplexer/demultiplexers44a-44c and DSUs 36a-36c). There are essentially two ways in which theOCUs can tell the MJU which branches are idle. These are referred to as"polling disciplines", as defined in AT&T Publication 62310, page 27(1987).

The two known polling disciplines are often referred to as "data modeidle" and "control mode idle". In the case of data mode idle, OCUssignal an idle state by transmitting continuous digital ones. Data bitsreceived by an MJU from the OCUs are combined in a logical AND so thatall of the OCUs supplying continuous logical ones are effectively idleand the OCU supplying a varying bit stream of ones and zeros is passedthrough by the MJU. Data mode idle has a disadvantage, though. If thereis a bit error from any one of the idle OCUs, it is combined with thedata stream from the active OCU and thus, the opportunity for corrupteddata is enhanced. Control mode idle avoids the possibility of datacorruption by consigning the MJU to ignore idle channels. In controlmode idle, an OCU signals the MJU that it is idle via network signallingknown in the art. So long as the idle sequence is received, data fromthat OCU is ignored (i.e., not ANDed).

In any polled application, it is the responsibility of the control(master) station to guarantee that only one tributary station (remoteterminal) responds at any one time. Therefore, it is true to say thatDrop-1 channel-1 will always be inactive while Drop-2 channel-1 isresponding or vice versa. But with a number of independent applicationsrunning simultaneously, one at each channel, collision between channels(e.g. Drop-1 channel-1 and Drop-2 channel-2) is a real possibility.

SUMMARY OF THE INVENTION

It is therefore an object of the invention to provide a substantiallyerror-free polled digital multiport multidrop system.

It is another object of the invention to provide a digital multiportmultidrop system which utilizes a control mode idle polling discipline.

It is a further object of the invention to provide a digital multiportmultidrop system which utilizes a framing scheme which multiplexesgroups of bytes from each data terminal and which separates these groupsof bytes with at least one guard band byte.

Another object of the invention is to provide a digital multiportmultidrop system which monitors the delay in signals from data terminalsand adaptively adjusts accordingly. In accordance with these objects, adigital polled multiport multidrop system which utilizes a publicdigital telecommunications network is provided and generally comprises amultiplexer/demultiplexer for receiving outbound information from aplurality of hosts and for providing a time division multiplexed outputto a data service unit and for receiving inbound information via thedata service unit from a number of remote sources and demultiplexing theinbound information for the hosts, and a microprocessor for controllingthe multiplexer/demultiplexer to multiplex outbound information from thehosts according to a first frame and for demultiplexing inboundinformation from the data service unit according to a second frame. Thesecond frame is designed such that one or more of bytes of data arereceived from a particular remote source followed by at least one guardband byte followed by one or more of bytes of data from another remotesource. The remote sites are polled by the microprocessor to determinedifferent delays between the host and the remote sites. In response to ameasured delay, the remote sites are programmed by the microprocessor tosend data at desired times so that synchronized time divisionmultiplexing is maintained. While this synchronization technique isobvious to one skilled in the art, the present invention also providescontinuous monitoring of the time delay so that synchronization can beconstantly maintained and corrected "on-the-fly". The guard band of theinvention permits "on-the-fly" corrections as it is capable of absorbingbit slips.

The guard band may include a bipolar violation which is passed by aremote DSU to an OCU and is used by the OCU to inform the MJU whetherthe OCU is sending data. That is, the guard band can contain a bipolarviolation, if the following time slot does not contain data from aremote terminal. The guard band also helps prevent errors associatedwith time delays at remote terminals. With the guard band in place, ifthe timing of a remote terminal slips so that it is sending data eithertoo early or too late, it will be sending data during the guard bandinterval, the data will interfere with the guard band, but not withother incoming data. If the guard band comprises a plurality of marks(digital ones), the worst case situation will be that the systemoperates in data mode idle until the slippage of the remote terminal iscorrected.

If data is received during a guard band interval, the mastermicroprocessor will determine that there has been a change in delay froma remote terminal. In order to determine which remote terminal haschanged delay, the microprocessor monitors incoming and outgoing frames.The frames are constructed with one or more bytes of control informationwhich includes substantially continuous polling of the remote units todetermine delay. The microprocessor informs the delayed remote unit tochange its timing and this information is included in the controlinformation portion of the frame. In order that the guard band notutilize too much bandwidth, a plurality of bytes from a remote terminalare sent between guard bands.

Additional objects and advantages of the invention will become apparentto those skilled in the art upon reference to the detailed descriptiontaken in conjunction wit the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a prior art drawing of a digital multiport multidrop systemwhich interfaces with a digital telecommunications network.

FIG. 2 is a representative functional block diagram of a component whichis used at the master and at each remote to implement the polled digitalmultiport multidrop system of the invention.

FIG. 3 is a more detailed block diagram of a portion of the component ofFIG. 2.

FIG. 4 is a block diagram of the custom LSI used in construction of thecomponent shown in FIGS. 2 and 3.

FIG. 5 is a flowchart of the master unit component power up procedure.

FIG. 6 is a flowchart of the remote unit component power up procedure.

FIGS. 7a and 7b are framing format diagrams of the outbound (master toremote) frame and the inbound (remote to master) frame.

FIGS. 8a and 8b are flowcharts of the delay measurement procedures ofthe master and remote units upon power up.

FIG. 9 is a flowchart of the delay monitoring process of the system.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

The basic building block or component 100 of the invention is seen inFIG. 2. As shown, the component (which is also referred to as the NMS464) comprises a multiplexer/demultiplexer 114, a microprocessor 154with accompanying RAM 162 and ROM 166, and a DSU 116. The DSU is wellknown in the art, and is sold by the assignee of the present applicationas General DataComm, Inc. NMS 510. Component 100 is utilized for boththe master (host) site and the remote sites, and as shown in FIG. 2 isgeneric. The microprocessor 154 controls the multiplexer/demultiplexer114 according to a program which can be stored in ROM 166. Where thecomponent 100 is used in conjunction with the master site, themultiplexer multiplexes data from the host terminals in accord withcontrol information generally generated by the microprocessor. However,where the component 100 is used in conjunction with remote sites, themultiplexer 114 not only multiplexes data from different terminalstogether with control information, but also multiplexes a guard bandwhich is described in detail below.

Referring now to FIG. 3, additional features of the non- DSU portion ofcomponent 100 are seen in more detail. As shown, microprocessor 154 ispreferably a 68302 microprocessor package having a 68000 microprocessorand several parallel to serial and serial to parallel converters 154b,154c, 154d. The multiplexer/demultiplexer 114 is preferably constructedof several LSIs 114a, 114b, 114c, 114d which are used for variousmultiplexer functions well known in the art.

The LSI chips are manufactured by the assignee of the presentapplication and are designated "MAFIA (Multiplexer Asynchronous FIFOInterface Adapter) Custom LSI Chip". FIG. 4 shows a basic block diagramof the MAFIA chip. The MAFIA LSI can be divided into five mainfunctional blocks: PLL and Baud Rate Generation (902-912); Aggregate SCCControl 932; Data Path (914, 916, 918, 922, 924, 928, 930); DTE StatusMonitor 920; and Microprocessor Control (926).

The PLL and Baud Rate Generation generally includes one PLL 902 and twoindependent timing chains 908, 910 connected by routing logic 906. Thetiming chains may also be driven by external phase-locked high frequencyclocks.

The Digital Phase Lock Loop 902 operates from a master clock source of16.128 MHz which is provided externally and which may be selectivelydivided by a timing reference select 904.

The baud rate generators must generate four different clocks as selectedat the block selection circuit 912: Aggregate Transmit Clock; ChannelTransmit Clock; Channel Receive Clock; and an Independent Supplementaryclock. The Aggregate Control 932 is the interface with the 68302multi-protocol processor referred to above. It functions as a dedicatedinterface to the serial communication controllers, SCC1 and SCC2 andtimers of the 68302.

The Data Path is where the serial user data passes through the LSI. Itperforms two main functions: Async to Sync conversion 916 and V.13simulated controlled carrier 918.

The Async-Sync Converter 916 inserts or deletes stop bits to handleoverspeed or underspeed situations when input data from the DTE isasynchronous and must be re-synchronized to the system's internal bitclock.

The V.13 Simulated Controlled Carrier 918 is described in CCITTrecommendation V.13. Serial--Parallel conversion is provided by 922 and924 because data is processed by the multiplexer in eight bit bytes anduser data is in serial form. Part of the conversion requires In and OutFIFO buffers 928 and 930.

To allow flexible external clocking of transmit data, an elastic buffer914 is provided in the data path. The range of elasticity should be ±8bits and the size of the buffer should be 16 bits.

In order to support many diagnostic functions it is necessary thatsignals at the DTE be monitored. To accommodate this need, activitymonitors such as the DTE Status Monitor 920 shown in FIG. 4 areprovided. These monitors are essentially edge triggered latches whichwill capture a transition and remain in state until reset by themicroprocessor.

The MAFIA LSI is designed to interface to a microprocessor through an8-bit bus 934. The LSI has 15 write registers and 4 read registers toenable the host microprocessor to control every function of the LSIcircuit. The MAFIA LSI provides an interrupt request output 926 forinterfacing with the host microprocessor.

The multiplexer is a time division multiplexer which works with packetsof bytes. It has a storage facility and is programmed according to aframe where packets of bytes are taken from one source before packets ofbytes are taken from another source.

FIGS. 5 and 6 show the different start-up procedures for component 100when used as master or remote units. During the start-up procedure, themaster and remote units cooperate in order to permit a measurement ofdelay.

Referring now to FIG. 5, the master unit upon power-up 402 determines ifany remotes are installed 404. If not, it waits for a user command 408to install the first remote. If remotes are installed, the masterbroadcasts an outbound "Disable Transmitter" command 406 to all remotes.The master then performs delay measurements 410, 412, 414 (describedbelow) on each remote.

After all delay measurements are made, the master broadcasts an outbound"Enable Transmitter" command 416 to all remotes and normal user datatransmission 418 begins.

Referring now to FIG. 6, the remote unit on power-up 502 first disablesits transmitter 504 waits for a poll from the master 506. If it doesreceive a poll from the master, it responds 508 and if the masteracknowledges 512, the remote enables its transmitter 518 and beginsnormal operation 520. If no poll from the master unit is received 506 orif the master does not acknowledge 512 the response by the remote 508 tothe master's poll, the remote waits for delay measurement request 510.If no delay measurement request is received 510, the remote again waitsfor a poll from the master unit 504. If a delay measurement request isreceived from the master 510, delay measurement is performed 514 and theremote waits for the "enable transmitter` command 516 from the master.When the command is received, the remote enables its transmitter 518 andbegins normal operation 520.

The delay measurement procedures for the master and remote units uponpower-up are shown in more detail in FIGS. 8a and 8b, respectively anddescribed below in the discussion of Propagation Delay Compensation. Thedelay measurement is used to provide information about the time delay ofthe different remote units so that data sent from the remote units canbe synchronized one relative to the other. Since each remote site mightexperience different delay and data from a plurality of sites is to betime division multiplexed, account must be made for the delay from eachsite. As mentioned above, the basic technique of synchronizing theremote sites to account for delay is known in the art.

Turning to FIG. 7a, the framing of outbound data is shown. The outboundframe is assembled in a generally standard manner and is preferably 10msec in length. It includes sync and control information in addition todata from one or more channels. Outbound frames are transmittedcontinuously or in what is referred to as "constant carrier mode". Thenumber of bytes in an outbound frame is determined by the data rates ofthe channels. For example, the table below indicates the number of bytesgenerated by a channel in 10 msec at data rates from 2.4 kbps to 64.0kbps:

    ______________________________________                                        Data Rate    Bits/10 msec                                                                             Bytes/10 msec                                         ______________________________________                                         2.4k         24         3                                                     4.8k         48         6                                                     7.2k         72         9                                                     9.6k         96        12                                                    12.0k        120        15                                                    14.4k        144        18                                                    16.8k        168        21                                                    19.2k        192        24                                                    38.4k        384        48                                                    56.0k        560        70                                                    64.0k        640        80                                                    ______________________________________                                    

If for example, the outbound frame is to contain data from 4 channelsand the data rates of the 4 channels are 9.6 kbps, 2.4 kbps, 2.4 kbps,and 38.4 kbps, the aggregate data stream must have a rate of 56 kbps.This means that the outgoing frame may comprise 70 bytes. The totalnumber of data bytes is 66: channel 1 has 12 bytes per frame, channels 2and 3 each have 3 bytes and channel 4 has 48 bytes. In general, aminimum of 3 bytes are needed for synchronization, Netcon diagnostic and"inband" master-to-remote communication which will be described in moredetail below.

The 10 msec aggregate outgoing frame must be assembled before it can besent. Input buffers for each channel accumulate the appropriate numberof bytes needed for each frame cycle. With this input bufferarrangement, it is clear that all input data incur a minimum delay of 10msec due to the holding time in the buffers. In order to reduce thisbuffer delay, the 10 msec frame may be further divided into three equaldata segments so that the buffer delay that any one channel will sufferis between 3.33 and 6.67 msec. Therefore, in the 4 channel exampleabove, the aggregate outgoing frame structure can be seen in the tablebelow:

    ______________________________________                                         ##STR1##                                                                      ##STR2##                                                                      ##STR3##                                                                      ##STR4##                                                                     ______________________________________                                    

It will be appreciated that for channel rates 56 kbps and 64 kbps, thenumber of bytes, 70 and 80 respectively, are not divisible by 3. Tomaintain the three data segment division of the frame, one segment maybe prearranged to have one byte more than the others. This is not aproblem so long as the demultiplexing scheme does exactly the reverse.

The multiplexed frame of 70 bytes shown above is one example. The frameis constructed and transmitted repeatedly. At another aggregate rate,the multiplexed frame may take on different organizations.

At the receiving end of such a multiplexed data stream, the reverseprocess is performed and the channel data is reassembled. In order toperform this process, it is essential to locate the beginning of eachframe. Thus, a known 8-bit pattern is sent as the FRAME SYNC byte at thestart of each frame. In the above example, therefore, FRAME SYNC bytesare separated by 70 bytes or 560 bits. As is known in the art, thereceiver circuitry is capable of performing some form ofauto-correlation on the aggregate signal to obtain synchronization.

The FRAME SYNC byte is preferably constructed so that the probabilitythat some user data appearing identical to it frame-after-frame issufficiently low. A sample FRAME SYNC byte is shown in the table below:

    ______________________________________                                         ##STR5##                                                                 

    ______________________________________                                    

In accordance with the invention, it is desirable that every thirdoutbound frame be designated a Superframe. Superframes will containcontrol information for synchronization, Netcon and auxiliarycommunication as described in more detail below.

Turning to FIG. 7b, the inbound framing is seen. Because the datacontained in the inbound frame is provided in response to polling, itwill be appreciated that the inbound frame functions according to a"Switched Carrier Mode". In any polled application, it is theresponsibility of the master (control) station that only one tributarystation (remote terminal) respond at any one time. Therefore, it is trueto say that Drop-1 channel-1 will always be inactive while Drop-2channel-1 is responding or vice versa. But with a number of independentapplications running simultaneously, one at each channel, collisionbetween channels (e.g. Drop-1 channel-1 and Drop-2 channel-2) is a realpossibility. In order to prevent data collisions, a standard"time-slicing" scheme is adopted for the inbound (from remote to master)aggregate transmission (frame). For example, given some arbitrary timereference t0=0, a first time slot may be defined as t0 to t1, which canbe reserved for responses from channel 1. Similarly, a second time slott1 to t2 can be reserved for responses from channel 2, etc, until acomplete cycle is performed allowing for responses from each channel.This example is shown more clearly in the table below:

    __________________________________________________________________________     ##STR6##                                                                 

    __________________________________________________________________________

If one assumes that all inbound propagation delays on this exemplarymultipoint line are identical, then by arranging all remote drops toadopt the same time-slicing boundaries, collisions can be avoided.

To establish a common time reference t0 among all remote drops, theoutbound signal from the master to the remotes is used. As mentionedabove, the outbound signal from the master has a frame cycle of 10 msec.All of the remotes which are receiving the outbound signal, therefore,may derive a common "clock" that ticks once every 10 msec. Moreover,every one out of X (preferably 3) outbound frames contains a tag toidentify it as a Superframe. At each remote receiver, Superframe timinginformation is extracted to establish the time reference t0 for use inthe time-slicing scheme described above.

To further enhance collision protection, adjacent channel time-slots areseparated by gaps, so that minor jitters of an integer number of bitscan be tolerated without resulting in overlapping of adjacent channelresponses. Such a scheme of gaps is shown for example in the table belowwhere the gaps are shown with the letter G:

    __________________________________________________________________________     ##STR7##                                                                 

    __________________________________________________________________________

At the receiver of the master multiplexer, the boundaries of channeltime-slots are established using the master's own transmit signalSuperframe timing as reference. The gaps between time slots arepreferably 3 bytes and 21 bits of those three bytes are designated asthe guard band. As mentioned above, the guard band enhances collisionprotection, but also enables the efficient use of "control mode idle",prevents errors during bit slippage of a remote port, and provides meansfor "on-the-fly" correction of time delay of remote ports.

The guard band is normally 21 marks, i.e. twenty-one bits, all 1. Theremaining 3 bits in the 3 byte gap distinguish whether the time slotfollowing the gap is the start, middle or end of a channel response. Thefirst bit (bit₋₋ 6 of the third byte) works like a "start bit" and isalways set to "0" if there is data present. The second and third bits(bit₋₋ 7 and bit₋₋ 8 of the third byte) are used as status flags toinform the receiver of the following conditions:

    ______________________________________                                        bit.sub.-- 7                                                                         bit.sub.-- 8                                                                             The subsequent data carried in this                         0      0          time-slot is a complete response                            0      1          the start of a response                                     1      0          the middle section of a response                            1      1          the end section of a response                               ______________________________________                                    

These last two bits of the third byte in the gap are normally followedby an 8-bit "byte count" at the start of each time slot which informsthe receiver of the length of the subsequent data stream. When bit₋₋ 7=1and bit₋₋ 8=0, however, the byte count can be omitted since it isapparent that the data stream spans the entire time-slot. Additional"byte count" bytes may be needed for high data rates.

It can be seen that the gaps between time-slots consume bandwidth. Tominimize loss and maximize bandwidth efficiency, therefore, the inboundframe time cycle should be as long as possible. On the other hand, ifthe time cycle of the inbound frame is too long, transaction responsetime is increased. A compromised value of 30 msec is preferred. In thefour channel example described above with reference to the outboundframe, a 30 msec inbound frame can comprise 1680 bits (56×30) or 210bytes of data. An illustration of the organization of such an inboundmultipoint frame is shown below where the binary representations inBytes 3, 24, 36, 48, and 207 are shown LSB first:

    ______________________________________                                        Byte 1 FF hex, start of 21-bit guard band                                     Byte 2 FF hex,                                                                Byte 3 SS011111 bin, 0=start of data, SS are status flags                     Byte 4 "Byte Count" or data byte 1                                            Byte 5 Channel 1 data byte 1 or 2, (4.8 kbps)                                 .      .                                                                      .      .                                                                      .      .                                                                      Byte 21                                                                              Channel 1 data byte 17 or 18                                           Byte 22                                                                              FF hex, start of 21-bit guard band                                     Byte 23                                                                              FF hex,                                                                Byte 24                                                                              SS011111 bin, 0=start of data, SS are status flags                     Byte 25                                                                              "Byte Count" or data byte 1                                            Byte 26                                                                              Channel 2 data byte 1 or 2 (2.4 kbps)                                  .      .                                                                      .      .                                                                      .      .                                                                      Byte 33                                                                              Channel 2 data byte 8 or 9                                             Byte 34                                                                              FF hex, start of 21-bit guard band                                     Byte 35                                                                              FF hex,                                                                Byte 36                                                                              SS011111 bin, 0=start of data, SS are status flags                     Byte 37                                                                              "Byte Count" or data byte 1                                            Byte 38                                                                              Channel 3 data byte 1 or 2 (2.4 kbps)                                  .      .                                                                      .      .                                                                      .      .                                                                      Byte 45                                                                              Channel 3 data byte 8 or 9                                             Byte 46                                                                              FF hex, start of 21-bit guard band                                     Byte 47                                                                              FF hex,                                                                Byte 48                                                                              SS011111 bin, 0=start of data, SS are status flags                     Byte 49                                                                              "Byte Count" or data byte 1                                            Byte 50                                                                              Channel 4 data byte 1 or 2 (38.4 kbps)                                 .      .                                                                      .      .                                                                      .      .                                                                      Byte 192                                                                             Channel 4 data byte 143 or 144                                         Byte 193                                                                             FF hex, 6 more bytes of marks reserved for use as                             "gaps" for two or more additional channels                             .      .                                                                      .      .                                                                      .      .                                                                      Byte 198                                                                             FF hex                                                                 Byte 199                                                                             Not used, (1.6k of bandwidth is not used)                              .      .                                                                      .      .                                                                      .      .                                                                      Byte 204                                                                             Not used                                                               Bute 205                                                                             FF hex, start of 21-bit guard band                                     Byte 206                                                                             FF hex,                                                                Byte 207                                                                             SS011111 bin, 0=start of data, SS are status flags                     Byte 208                                                                             Control/Diagnostic Channel data byte 1                                 Byte 209                                                                             Control/Diagnostic Channel data byte 2                                 Byte 210                                                                             Control/Diagnostic Channel data byte 3                                 ______________________________________                                    

FIG. 7b shows this arrangement of the inbound data frame in a schematicway and also shows an additional control channel C sent at the end ofeach frame. In the frame described above, the control channel is thelast 3 bytes of the frame (Bytes 208-210 in the table above). Thecontrol channel, like the data channels, is bracketed with gapsincluding guard bands. The control or diagnostic data time slot shown inFIG. 7b may be used as shown in the flow chart of FIG. 9 (which isdiscussed in detail below) to monitor delay while data is being sent.

In a real network, propagation delays will be different from drop todrop. These delays must be "equalized" in order for the signals to besynchronized. Equalization is accomplished by a circuit initializationprocedure during which each remote drop is polled and propagation delayis measured. The measured values are then sent back to each remote foradjusting the time reference t0. The flow charts in FIGS. 8a and 8b showthis procedure generally. Turning now to FIGS. 8a and 8b, the masterfirst at 602 broadcasts a command to disable all remotes (hold mark) andthen at 604 waits a reasonable time for all remotes to acquire framesynchronization. the remotes receive the disable transmitter command at622 and disable their transmitters at 624. Next at 606, the master sendsa "prepare for delay measurement" command to a specific remote and waitsuntil the transmission of the next Superframe to start a counter at 608which is clocked by the aggregate TX clock. Then the master waits at 610for the remote response. Meanwhile, the remote at 626 receives the"prepare for delay measurement" or if none is received, enables itstransmitter at 634. After receiving the "prepare for delay measurement"at 626, the the addressed remote at 628 waits for the next Superframesync pattern. When the Superframe sync pattern is detected, a responseis immediately sent back to the master which receives it at 610. If noresponse is received by the master at 610, the master broadcasts anenable transmitter command to all remotes at 618. If the master receivesthe response from the remote at 610, the master stops the counter at 612and records the count on the counter and calculates the delayequalization value for the specific remote at 614.

The count is proportional to the round-trip propagation delay for theselected remote drop. Based on the measured value, the master at 616sends back to the remote a Delay Equalization Count which may have thevalue

    ______________________________________                                        N - Count,       if Count ≦ N or,                                      2N - Count,      if Count ≦ 2N or,                                     3N - Count,      if Count ≦ 3N or, etc.                                ______________________________________                                    

where N=(3×Aggregate Speed)/100. The value 3 is used here assuming thatthere is one Superframe for every 3 frames. This is a good value to usesince it represents an optimized compromise between Available UserBandwidth and Response Time. The number of Superframes may be different,however, under different circumstances.

The selected remote then receives at 630 the Delay Equalization Count,delays its current time reference t0 by that amount, and waits at 634for the enable transmitter command from the master. If the remote doesnot receive a Delay Equalization Count at 630, it suspends normal datatransmission and waits at 632 for the next delay measurement. The masterrepeats the steps at 606 through 616 for each remote and then broadcastsat 618 an "Enable Transmitter" and begins normal operation at 620.

Each remote, after receiving the "Enable Transmitter" at 634 proceed tonormal data transmission at 636. If a remote does not receive an "EnableTransmitter" command at 634, it waits at 626 for a "prepare for delaymeasurement" command from the master.

The procedure is carried out when the master is first powered on or whena new remote drop is being installed. It can also be initiated by acommand from the Netcon controller. The control channel discussed aboveand shown schematically in FIG. 7b can also be used to permit asubstantially continuous monitoring of propagation delay so that remoteterminals can be adjusted and kept in sync.

FIG. 9 shows a flowchart of how the master monitors the propagationdelay of the remote units and adjusts the transmitter offset of theremote units to compensate for change in delay. The master unit at 704polls the first remote and sets a timer to measure the arrival time ofthe response from the first remote. The master also starts a time- outtimer at 706. If no response at 708 is received from the first remotewithin the time-out interval at 710, the master skips to the next remoteat 718. If a response is received at 708 before time-out at 710, themaster calculates at 712 whether the arrival time is less than 5 bits(five aggregate clock periods) different from the nominal timeassociated with the first remote. If the arrival time is within 5 bitsof the nominal time, the master at 714 sends a "good" acknowledgement tothe first remote. If the arrival time is more than 5 bits different(either earlier or later) than the nominal time, the master at 716orders the first remote to shift its transmitter offset to compensatefor the change in delay. The master then at 718 repeats this procedurefor all remotes.

This monitoring is slow but substantially continuous and it providesenough protection so that a determination can be made and correctiveaction taken before the system needs to be shut down due to errors.

The correction command is sent to the remote unit in the controlinformation section of the outbound frame. Correction is not made unlessthe difference between the measured and nominal values of T1 issignificant (preferably ≧5 bits) since small differences may be theresult of a temporary glitch and not require corrective action.

As mentioned above, the outbound frame includes two control bytes in itsheader. These bytes are preferably constructed according to the tablebelow:

    ______________________________________                                        BYTE.sub.-- 1:-                                                                         Status Flags                                                        bit 2-1,  (21)                                                                          00 = Not a Superframe                                                         01 = Superframe A                                                             10 = Superframe B                                                             11 = Superframe C                                                   bit 3, Not used                                                               bit 6-4,  (654)                                                                         000 = Next byte is Netcon data                                                001 = Next byte is Aux. Ch data                                               011 = Next byte is Ctl data                                                   101 = Next byte is Start of Ctl data                                          110 = Next byte is End of Ctl data                                  bit 7,    0 = Unit is a Diagnostic Remote, as set by DSU                                1 = Unit is a Diagnostic Master, as set by DSU                      bit 8,    0 = Expects Constant Receive Carrier                                          1 = Expects Switched Receive Carrier                                BYTE.sub.-- 2:-                                                                         Netcon, Aux'y Channel or Control                                              data                                                                ______________________________________                                    

The first byte is used as a status indicator. It specifies whether thesecond byte is Netcon data, Auxiliary Channel data, or Control data andit indicates whether the current frame is a Superframe. In the case of aSuperframe, status bits are also assigned to distinguish if it is aSuperframe A, Superframe B, or Superframe C. The distinction is requiredto coordinate the inbound responses from the three separate sourcesmentioned above. Bit 7 indicates to the remote receiver, the unit'smaster/remote status as told by its DSU. Bit 8 lets the remote receiverknow what receive carrier mode this unit expects. For example, if theremote receiver is to be used in a point to point mode, bit 8 is setto 1. However, for purposes of this invention, bit 8 is set to 0, as aconstant carrier is expected from the master. Since each outbound framecarries only one byte of control data, a complete command may span anumber of outbound frames and errors may be detected through the use ofa checksum byte. Three bytes are available for inband communication inthe 30 msec inbound frame. These bytes are preferably constructedaccording to the table below:

    ______________________________________                                        BYTE.sub.-- 1:-                                                                          Status Flags.                                                      bit 3-1,   (321)                                                                         000 = Next byte is a Netcon character                                         001 = Next two bytes are Netcon char's                                        010 = Next byte is Aux'y Channel data                                         011 = Next two bytes are Aux Channel data                                     100 = Next byte is Control data.                                              101 = Next two bytes are Control data.                             bit 8-4,   Not assigned                                                       BYTE.sub.-- 2:-                                                                          Netcon, Auxiliary Channel or Control data                          BYTE.sub.-- 3:-                                                                          Netcon, Auxiliary Channel or Control data                          ______________________________________                                    

The master normally addresses each remote by its Drop Number. Responsesfrom the remote to the master are always two bytes at a time.

As will be appreciated, the guard band is a critical aspect of thisinvention. During the guard band, the remote DSUs can inform the OCUs towhich they are coupled whether they will be sending data or not in, thetime slot following the guard band. This information is then used by theOCU to inform the MJU of the same so that the MJU can shut off the OCUdata input to the MJU if the OCU is not sending data. In this manner,the "data mode idle" discipline is avoided and the system is notsusceptible to noise. By sending the "control mode idle" command in theguard band (as well as in the non-data carrying time-slot following theguard band), any lagging response by the OCU can be compensated for.Moreover, the guard band also guards against errors which wouldotherwise result from a change in the delay from a remote terminal tothe master. With the guard band, should data from one OCU be receivedslightly earlier or later than expected, it will not conflict with datafrom another remote terminal. In other words, the untimely OCU will,because of the guard band, begin transmission with 21 bits of marks (theguard band) and will simply put the untimely OCU from control mode idleinto data mode idle. If data is received during the transmission of aguard band, signaling that delay from a remote terminal has changed, themaster microprocessor will determine that there has been a change.Furthermore, as previously described, the system is provided withmonitoring means in the control signalling in order to determine whichremote terminal has changed its delay.

There have been described and illustrated herein digital multiportmultidrop systems. While particular embodiments of the invention havebeen described, it is not intended that the invention be limitedthereby, as it is intended that the invention be as broad in scope asthe art will allow. Thus, it is understood by those skilled in the artthat while a guard band has been described as preferably havingtwenty-one bits, it will be appreciated that a guard band having adifferent number of bits can be used, provided there is enough time forthe DSU to communicate to the OCU (and the OCU to the MJU) that no datawill be sent from that DSU during the next slot in the frame. Also,while particular hardware and software arrangements have been provided,it will be appreciated that one, the other, or both can be suitablychanged, but will still provide the same guard band, monitoring, andother functions. Therefore, it will be appreciated by those skilled inthe art that yet other modifications could be made to the providedinvention without deviating from its spirit and scope as so claimed.

We claim:
 1. A component for use in a digital multiport multidrop systemhaving at least one host terminal connected through a data service unitto a telecommunications network having at least two office channel units(OCUs) and a plurality of remote terminals connected to thetelecommunications network through the OCUs via data service unitswhereby the host and remote terminals may communicate, thetelecommunications network including at least one multiple junction unit(MJU) coupled to the OCUs, each OCU informing the MJU whether the OCU issending data when the OCU receives an appropriate signal from arespective data service unit, said component comprising:amultiplexer/demultiplexer for multiplexing outbound signals from thehost terminals to the remote terminals and for demultiplexing inboundsignals from the remote terminals to the host terminals; and amicroprocessor for controlling said multiplexer/demultiplexer so thatoutbound signals are multiplexed according to a first frame and inboundsignals are demultiplexed according to a second frame, wherein saidsecond frame is arranged such that a packet of data from a first one ofsaid remote terminals is followed by a first guard band, followed by apacket of data from a second one of said remote terminals, followed by asecond guard band, and said guard bands comprising at least one byterepresenting no data transmission and including the appropriate signalfor the data service unit to send to the OCU so that the OCU informs theMJU whether the OCU is sending data.
 2. A component according to claim1, wherein:said second frame includes inbound control information andsaid microprocessor monitors said inbound control information todetermine whether time delays of said remote terminals have changed. 3.A component according to claim 2, wherein:said first frame includesoutbound control information and said outbound control information isused to adjust time delays of said remote terminals.
 4. A component foruse in a digital multiport multidrop system having at least one hostterminal connected through a data service unit to a telecommunicationsnetwork having at least two office channel units (OCUs) and a pluralityof remote terminals connected to the telecommunications network throughthe OCUs via data service units whereby the host and remote terminalsmay communicate, the telecommunications network including at least onemultiple junction unit (MJU) coupled to the OCUs, each OCU informing theMJU whether the OCU is sending data when the OCU receives an appropriatesignal from a respective data service unit, said component comprising:amultiplexer/demultiplexer for multiplexing inbound signals from theremote terminals to the host terminals and for demultiplexing outboundsignals from the host terminals to the remote terminals; and amicroprocessor for controlling said multiplexer/demultiplexer so thatoutbound signals are demultiplexed according to a first frame andinbound signals are multiplexed according to a second frame, whereinsaid second frame is arranged such that a packet of data from a firstone of said remote terminals is followed by a first guard band, followedby a packet of data from a second one of said remote terminals, followedby a second guard band, and said guard bands comprising at least onebyte representing no data transmission and including the appropriatesignal for the data service unit to send to the OCU so that the OCUinforms the MJU whether the OCU is sending data.
 5. A componentaccording to claim 3, wherein:said second frame includes controlinformation.
 6. A component according to claim 4, wherein:each saidguard band comprises at least two bytes.
 7. A component according toclaim 6, wherein:each bit of said two bytes has the same value.
 8. Acomponent according to claim 4, wherein:each said guard band comprisesat least twenty-one bits.
 9. A component according to claim 8,wherein:each bit of said twenty-one bits has the same value.
 10. Adigital multiport multidrop system having at least one host terminalconnected through a data service unit to a telecommunications networkhaving at least two office channel units (OCUs) and a plurality ofremote terminals connected to the telecommunications network through theOCUs via data service units whereby the host and remote terminals maycommunicate, the telecommunications network including at least onemultiple junction unit (MJU) coupled to the OCUs, each OCU informing theMJU whether the OCU is sending data when the OCU receives an appropriatesignal from a respective data service unit, said system comprising:afirst multiplexer/demultiplexer for multiplexing outbound signals fromthe host terminals to the remote terminals and for demultiplexinginbound signals from the remote terminals to the host terminals; a firstmicroprocessor for controlling said first multiplexer/demultiplexer sothat outbound signals are multiplexed according to a first frame andinbound signals are demultiplexed according to a second frame; a secondmultiplexer/demultiplexer for multiplexing inbound signals from theremote terminals to the host terminals and for demultiplexing outboundsignals from the host terminals to the remote terminals; and a secondmicroprocessor for controlling said second multiplexer/demultiplexer sothat outbound signals are demultiplexed according to a first frame andinbound signals are multiplexed according to a second frame, whereinsaid second frame is arranged such that a packet of data from a firstone of said remote terminals is followed by a first guard band, followedby a packet of data from a second one of said remote terminals, followedby a second guard band, and said guard bands each comprise at least onebyte representing no data transmission and including the appropriatesignal for the data service unit to send to the OCU so that the OCUinforms the MJU whether the OCU is sending data.
 11. A system accordingto claim 10, wherein:said second frame includes inbound controlinformation and said first microprocessor monitors said inbound controlinformation to determine whether time delays of said remote terminalshave changed.
 12. A system according to claim 11, wherein:said firstframe includes outbound control information and said outbound controlinformation is used to adjust time delays of said remote terminals. 13.A system according to claim 12, wherein:said second frame includescontrol information.
 14. A system according to claim 10, wherein:eachsaid guard band is at least two bytes.
 15. A system according to claim14, wherein:each bit of said two bytes has the same value.
 16. A systemaccording to claim 10, wherein:each said guard band is at leasttwenty-one bits.
 17. A system according to claim 16, wherein:each bit ofsaid twenty-one bits has the same value.
 18. A component according toclaim 4, wherein:said appropriate signal comprises a bipolar violationwhen said OCU is not sending data and a plurality of marks when said OCUis sending data.
 19. A system according to claim 10, wherein:saidappropriate signal comprises a bipolar violation when said OCU is notsending data and a plurality of marks when said OCU is sending data. 20.A component according to claim 1, wherein:said appropriate signalcomprises a bipolar violation when said OCU is not sending data and aplurality of marks when said OCU is sending data.